// pages/home/home.js
import { getRecommends, getGoods } from '../../utils/api'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    recommendData: [],
    goodsData: [],
    pageIndex: 1,
    totalGoodsData: 0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
    getRecommends().then(res => {
      this.setData({
        recommendData: res.data,
      })
    }).catch(err => {
      console.log(err);
    });
    // 获取商品数据信息
    getGoods(this.data.pageIndex).then(res => {
      console.log(res.data);
      this.setData({
        goodsData: res.data,
        totalGoodsData: res.header["X-Total-Count"]
      })
    }).catch(err => {
      console.log(err)
    });
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    //下拉刷新
    // 获取商品数据信息
    getGoods(this.data.pageIndex).then(res => {
      console.log(res.data);
      this.setData({
        goodsData: res.data,
      });
      wx.stopPullDownRefresh();
    }).catch(err => {
      console.log(err)
    });
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    //到底加载下一页数据 懒加载
    if (this.data.totalGoodsData != this.data.goodsData.length) {
      getGoods(this.data.pageIndex + 1).then(res => {
        this.setData({
          goodsData: [...this.data.goodsData, ...res.data],
          pageIndex: this.data.pageIndex + 1
        })
      }).catch(err => {
        console.log(err)
      })
    }

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },

  // 跳转到search页面
  toSerachPage(){
    console.log('到达search页面');
    wx.navigateTo({
      url: '/pages/search/search',
    })
  },
  //跳转到详情页面
  toGoodDetail(e){
    // wx.switchTab是用于底部导航栏跳转
    // wx.navigateTo是用于非底部导航栏
    const {currentTarget:{dataset:{goodid,goodtitle}}}=e;
    console.log(goodid,goodtitle);
    wx.navigateTo({
      url:`/pages/detail/detail?goodid=${goodid}&title=${goodtitle}`,
    })
  }
})